যখন একটি মোবাইল অ্যাপ্লিকেশন Cordova বা অন্যান্য Hybrid ফ্রেমওয়ার্কে তৈরি করা হয়, তখন প্ল্যাটফর্ম বিশেষ কিছু ফাইল থাকে যা প্রতিটি মোবাইল প্ল্যাটফর্মের (যেমন Android, iOS) জন্য নির্দিষ্টভাবে কনফিগার এবং অ্যাডজাস্ট করা হয়। এই ফাইলগুলি প্ল্যাটফর্মের সাথে সম্পর্কিত নির্দিষ্ট সেটিংস, কনফিগারেশন এবং রিসোর্স সংরক্ষণ করে।
নিচে কিছু Platform-specific ফাইল এবং তাদের ভূমিকা বর্ণনা করা হলো:
১. config.xml
- ভূমিকা:
config.xmlহল Cordova প্রজেক্টের একটি গুরুত্বপূর্ণ কনফিগারেশন ফাইল। এটি অ্যাপ্লিকেশনের সাধারণ সেটিংস এবং কনফিগারেশন সংরক্ষণ করে এবং platform-specific সেটিংস কনফিগার করার জন্য ব্যবহৃত হয়। - ফাইলের উদ্দেশ্য:
- অ্যাপ্লিকেশনের নাম, আইকন, এবং স্প্ল্যাশ স্ক্রিন কনফিগার করা।
- বিভিন্ন প্ল্যাটফর্মের জন্য নির্দিষ্ট কনফিগারেশন সেটিংস প্রদান।
- API ব্যবহারের অনুমতি (যেমন ক্যামেরা, GPS) এবং প্লাগইন কনফিগারেশন।
- প্ল্যাটফর্মের নির্দিষ্ট স্টার্টপেজ নির্ধারণ।
<widget id="com.example.app" version="1.0.0" xmlns="http://www.w3.org/ns/widgets">
<name>My App</name>
<description>An example Cordova app</description>
<author email="youremail@example.com" href="http://example.com">Your Name</author>
<!-- Android specific settings -->
<platform name="android">
<allow-intent href="market:*" />
</platform>
<!-- iOS specific settings -->
<platform name="ios">
<preference name="StatusBarOverlaysWebView" value="false" />
</platform>
</widget>২. platforms/ (প্ল্যাটফর্ম স্পেসিফিক ডিরেক্টরি)
- ভূমিকা:
platforms/ডিরেক্টরি হল অ্যাপ্লিকেশনটি যেই প্ল্যাটফর্মে তৈরি হচ্ছে তার নির্দিষ্ট ফাইল ধারণ করে। যখন আপনি একটি নতুন প্ল্যাটফর্ম অ্যাড করেন (যেমন Android বা iOS), Cordova এই ফোল্ডারে সেই প্ল্যাটফর্মের জন্য সমস্ত প্রয়োজনীয় ফাইল এবং কনফিগারেশন তৈরি করে। - ফাইলের উদ্দেশ্য:
- প্ল্যাটফর্ম নির্দিষ্ট ফাইল, কোড এবং রিসোর্স সরবরাহ।
- অ্যাপের জন্য প্ল্যাটফর্ম নির্দিষ্ট ডিপেনডেন্সি এবং বিল্ড ফাইল সংরক্ষণ করা।
৩. platform-specific res/ (রিসোর্স ফাইল)
- ভূমিকা:
res/ফোল্ডারটি প্ল্যাটফর্ম স্পেসিফিক রিসোর্স ফাইল যেমন আইকন, স্প্ল্যাশ স্ক্রিন, থিম এবং অন্যান্য গ্রাফিক্স সংরক্ষণ করে। এগুলি এককভাবে প্রতিটি প্ল্যাটফর্মের জন্য কাস্টমাইজ করা হয়। - ফাইলের উদ্দেশ্য:
- Android: অ্যাপ আইকন (drawable), স্প্ল্যাশ স্ক্রীন (drawable/splash), থিম (values/styles.xml) এবং অন্যান্য গ্রাফিক্স।
- iOS: অ্যাপ আইকন, স্প্ল্যাশ স্ক্রীন, এবং অ্যাপের জন্য অন্যান্য গ্রাফিক রিসোর্স।
- প্রতিটি প্ল্যাটফর্মের জন্য সঠিক রেজোলিউশনে রিসোর্স ফাইলগুলি কনফিগার করা।
৪. www/
- ভূমিকা:
www/ডিরেক্টরি হল আপনার মূল অ্যাপ্লিকেশন ফাইলগুলির অবস্থান, যেখানে আপনি অ্যাপের HTML, CSS, JavaScript এবং অন্যান্য ফ্রন্টএন্ড ফাইল সংরক্ষণ করবেন। যদিও এটি প্ল্যাটফর্ম-নির্দিষ্ট নয়, তবে এটি সমস্ত প্ল্যাটফর্মে ব্যবহৃত হয়। - ফাইলের উদ্দেশ্য:
- অ্যাপের মূল ফ্রন্টএন্ড ফাইলগুলি যেমন HTML, CSS, এবং JavaScript ফাইল।
- ব্রাউজারে যেমন প্রদর্শিত হয়, সেভাবে অ্যাপের UI ডিজাইন এবং লজিক।
৫. plugins/ (প্লাগইন ফোল্ডার)
- ভূমিকা: Cordova প্লাগইন ফোল্ডারটি তৃতীয় পক্ষের প্লাগইন এবং অন্যান্য রিসোর্স সংরক্ষণ করে যা অ্যাপ্লিকেশনটির ফিচার বাড়াতে ব্যবহৃত হয়। প্লাগইনগুলি প্ল্যাটফর্ম স্পেসিফিক কার্যকারিতা প্রদান করে।
- ফাইলের উদ্দেশ্য:
- প্ল্যাটফর্মের জন্য প্রয়োজনীয় প্লাগইন যেমন ক্যামেরা, GPS, স্টোরেজ ইত্যাদি।
- প্রতিটি প্ল্যাটফর্মে প্লাগইনগুলি সঠিকভাবে কাজ করতে কনফিগার করা।
৬. config.xml (platform-specific configurations)
- ভূমিকা:
config.xmlফাইলের মধ্যে আপনি প্ল্যাটফর্ম-নির্দিষ্ট কনফিগারেশনও করতে পারেন, যেমন একটি প্ল্যাটফর্মে স্পেসিফিক প্যারামিটার বা অনুমতি প্রদান। এটি প্ল্যাটফর্মের উপর নির্ভর করে অ্যাপ্লিকেশনটির বৈশিষ্ট্য নির্ধারণ করে। - ফাইলের উদ্দেশ্য:
- প্ল্যাটফর্মের জন্য প্লাগইন এবং অন্যান্য কনফিগারেশন নিয়ন্ত্রণ করা।
- প্ল্যাটফর্ম বিশেষ নির্দিষ্ট কোড বা সেটিংস প্রদান করা।
সারাংশ
Platform-specific ফাইল গুলি হল আপনার অ্যাপ্লিকেশনের জন্য প্ল্যাটফর্ম নির্দিষ্ট সেটিংস, কনফিগারেশন এবং রিসোর্স সংরক্ষণের উপায়। এগুলোর মধ্যে রয়েছে:
- config.xml: অ্যাপের মূল কনফিগারেশন ফাইল যা প্ল্যাটফর্ম নির্দিষ্ট সেটিংস ধারণ করে।
- platforms/: প্রতিটি প্ল্যাটফর্মের জন্য তৈরি ফাইল এবং কোড।
- res/: প্ল্যাটফর্ম নির্দিষ্ট রিসোর্স ফাইল (যেমন আইকন, স্প্ল্যাশ স্ক্রীন)।
- www/: অ্যাপ্লিকেশনের মূল ফ্রন্টএন্ড ফাইল।
- plugins/: প্ল্যাটফর্ম স্পেসিফিক প্লাগইন ফোল্ডার।
এই ফাইলগুলির মাধ্যমে Cordova এবং অন্যান্য Hybrid প্ল্যাটফর্মগুলি ক্রস-প্ল্যাটফর্ম অ্যাপ্লিকেশন ডেভেলপমেন্টকে সহজ করে তোলে, কারণ তারা প্রতিটি প্ল্যাটফর্মের জন্য আলাদা কোড বা রিসোর্স ব্যবহারের পরিবর্তে একটি সাধারণ কনফিগারেশন ফাইল ব্যবহার করে কাজ করে।
Read more